package com.gin.ehdownloader.utils;

import org.springframework.util.CollectionUtils;

import java.util.ArrayList;
import java.util.List;

/**
 * 列表工具类
 * @author : ginstone
 * @version : v1.0.0
 * @since : 2023/3/31 17:01
 */
public class ListUtils {
    /**
     * 返回列表指定位置的元素
     * @param list    原列表
     * @param indexes 需要取出的元素位置
     * @return 新列表
     */
    public static <T> List<T> filterByIndex(List<T> list, List<Integer> indexes) {
        if (CollectionUtils.isEmpty(indexes)) {
            return list;
        }

        final ArrayList<T> res = new ArrayList<>();
        for (int i = 0; i < list.size(); i++) {
            if (indexes.contains(i)) {
                res.add(list.get(i));
            }
        }
        return res;
    }
}   
